﻿using System;
using System.Data;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using KPIS.GERP.GFMS.IBLL;
using KPIS.GERP.GFMS.MODEL;
using KPIS.GERP.GFMS.DAL;
using KPIS.GERP.GFMS.IDAL;
using KPIS.GERP.GFMS.DALFactory;

namespace KPIS.GERP.GFMS.BLL
{
    public class B_FIM_SelectReports : IBLL_FIM_SelectReports
    {
        private static readonly IDAL_FIM_SelectReports dal = DataAccess.Create_FIM_SelectReports();

        public DataTable SumUpBorrow(string BgYear, string BgmProj, string EmpName, DateTime? MoneyReqDateStart, DateTime? MoneyReqDateEnd, string bgm_source)
        {
            return dal.SumUpBorrow(BgYear, BgmProj, EmpName, MoneyReqDateStart, MoneyReqDateEnd, bgm_source);
        }

        public DataTable SumUpPaymentCheque(string BgYear, string BankSeq, string BankAccSeq, DateTime? StartDate, DateTime? EndDate, string strChequeStatus)
        {
            return dal.SumUpPaymentCheque(BgYear, BankSeq, BankAccSeq, StartDate, EndDate, strChequeStatus);
        }

        public DataTable SumUpPaymentCheque(string BgYear, string BankSeq, string BankAccSeq, string startChequeBookNo, string endChequeBookNo, string strChequeStatus)
        {
            return dal.SumUpPaymentCheque(BgYear, BankSeq, BankAccSeq, startChequeBookNo, endChequeBookNo, strChequeStatus);
        }

        public DataTable MoneyRequestNotPay(string bgm_source_seq)
        {
            return dal.MoneyRequestNotPay(bgm_source_seq);
        }

        public DataTable Receives(DateTime? StartDate, DateTime? EndDate, string bgm_source_seq)
        {
            return dal.Receives(StartDate, EndDate, bgm_source_seq);
        }

        public DataTable Receives(DateTime? StartDate, DateTime? EndDate, string bgm_source_seq,string receive_mode)
        {
            return dal.Receives(StartDate, EndDate, bgm_source_seq,receive_mode);
        }

        //Adding on 27/6/57
        public DataTable SumUpPaymentChequeHeader(string BgYear, string BankSeq, string BankAccSeq
            , string startChequeBookNo, DateTime? StartDate, DateTime? EndDate, string strChequeStatus)
        {
            return dal.SumUpPaymentChequeHeader(BgYear, BankSeq, BankAccSeq, startChequeBookNo, StartDate, EndDate, strChequeStatus);
        }
        public DataTable SumUpPaymentChequeDetail(string chequeSeq)
        {
            return dal.SumUpPaymentChequeDetail(chequeSeq);
        }
    }
}
